home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / tls / tls023.ltr < prev    next >
Text File  |  1994-09-02  |  7KB  |  154 lines

  1. to: Multimedia fans
  2.  
  3. Subj: tls023 - soundblaster driver, etc. original distribution
  4.       tls023d- updated drivers, binaries only
  5.       tls023ds- drivers, source code
  6.  
  7. Here is a version of Brian Smith's Soundblaster(tm) driver.
  8. This goes with tls022, which is some playback and Open Desktop
  9. interface code.
  10.  
  11. The new file here tls023d.tar.Z contains improved/updated drivers
  12. with an install script.   Sources  are in tls023ds.  These might
  13. not precisely match the binaries, but they are close. :-)
  14.  
  15. We are very grateful to Brian Smith and Lance Norskog for their
  16. work in this contribution to the technical community.
  17.  
  18. General comments should be directed to the contributors listed at
  19. the end of the README (below).  Comments specific to the SCO version
  20. would be welcomed by Rick Kamp, rickk@sco.com
  21.  
  22. Dion L. Johnson
  23. SCO Product Manager - Development Systems  400 Encinal St. Santa Cruz, CA 95061
  24. Bangpath:                           ...{ucbvax!ucscc, decwrl, uunet}!sco!dionj
  25. Domain:  dionj@sco.com    FAX: 408-427-5417                  Tel: 408-427-7565
  26.  
  27.  
  28.  
  29.  
  30.                          Sound Blaster(tm) Driver
  31.                        (Copyright 1991, Brian Smith)
  32.  
  33.     Rewritten for Release 3 by Lance Norskog, June 1992
  34.  
  35. This driver has been ported to the SCO environment by various
  36. engineers at SCO.  Problems or suggestions should be sent to 
  37. the mail address at the end of this file.
  38.  
  39. This is a driver and application suite for the Creative Labs'
  40. original monophonic Sound Blaster card.  It should work on
  41. other cards that claim to be SB-compatible, like the SB Pro,
  42. MediaVision, etc.  (The Adlib synth chips are supported, but
  43. you may have to comment out the SB DSP chip support if you
  44. want to run the Adlib or Game Board cards.)
  45.  
  46. Version 1 of the driver & applications was written by Brian Smith 
  47. (brians@rigel.cs.pdx.edu).  Pace Willisson (pace@blitz.com) rewrote
  48. the driver for overall cleanliness and to use in-kernel buffering
  49. to avoid the gottverdammter clicking problem. Independently, I
  50. rewrote the assembler interrupt to attack this issue, and have
  51. since merged my ugly hacks into Pace's very clean rewrite.
  52. As it turns out, you need to get the DSP 2.0 chip from Creative
  53. Labs to solve the clicking problem.
  54.  
  55. The application suite now contains a simple MIDI file player
  56. which uses the mf2t (or mft) MIDI file library.  This library
  57. comes in three forms; mf2t or mft is the latest version from
  58. Piet van Oostrum (piet@cs.ruu.nl).
  59.  
  60. New! MIDI works!
  61.  
  62. Known problems: 1) if you write sound samples in 16k chunks,
  63. the last one will not be played.  2) Loud click at end of
  64. play.  3) There's no protocol for an FM program to share
  65. FM channels with other programs.  4) The init code hangs
  66. in ISC 3.0 and SCO Unix.  No word yet on how to fix this.
  67.  
  68. REQUIREMENTS
  69.  
  70. This driver  and the associated user programs require a 386/486 system
  71. running System V 3.2 Unix.  It has been tested on Open Desktop 2.0 and
  72. UNIX 3.2v4 systems.  Remember, though, THERE IS NO WARRANTY.
  73.  
  74. As a  character driver, it should port easily to Linux and the various
  75. BSD 386 ports going on.  There is a Streams driver that presently only
  76. does  MIDI; this should port to V.4 easily.  It should also be easy to
  77. port  the  sampling and  FM  synthesis  parts  of  the driver into the
  78. Streams version, but nobody's done it yet.
  79.  
  80. (There is a separate driver for the SB-Pro on 386 BSD:
  81. contact Steve Haenischen, haenisch@ucsd.edu.)
  82.  
  83. GENERAL INFORMATION
  84.  
  85. This driver  is for the  Sound Blaster sound card designed by Creative
  86. Labs,  Incorporated.   The  Sound  Blaster  is  a  sound card  for the
  87. IBM-PC(tm) type I/O bus.  The card is capable of sampling sound from a
  88. microphone jack from 4KHz  to  23KHz (or 24KHz,  depending  upon which
  89. portion of the manual you believe) at 8 raw bits of resolution.  It is
  90. also capable of playing  samples at speeds from 4KHz up to 12KHz.  The
  91. board  can play raw 8 bit samples, or  2 bit,  2.6 bit, or 4 bit ADPCM
  92. packed samples.  ADCPM  is a lossy  method  of data  compression.  The
  93. sampling and output may  be directly driven by the  CPU, or it  may be
  94. driven by DMA.  The card  is also capable of  playing music through an
  95. on-board  FM synthesizer  chip.   The  chip  may  play 9  simultaneous
  96. instruments, or  it  can play 6 simultaneous voices  with 5 additional
  97. rhythm instruments.  In  addition, the  board (but NOT my driver) also
  98. supports the addition of 2 C/MS chips. For  more information, read the
  99. advertising blurb, errr...  manual which comes with the Sound Blaster.
  100.  
  101. The driver is  capable  of utilizing only a subset of the capabilities
  102. of the Sound Blaster card.  The driver is accessed through four device
  103. nodes.
  104.  
  105. The /dev/sbdsp node accesses the DSP  chip which controls sampling and
  106. sample playback.  Only 8-bit sound is supported thus far.  The  driver
  107. utilizes  DMA,  and  therefore is very unobtrusive to the system load.
  108. The ls  utility is  harder upon the system.  Read(2) and write(2) upon
  109. /dev/sbdsp sample  sound and  play back  sound  samples, respectively.
  110. Several  ioctl(2)'s  control sampling/playback speed,  resets,  etc...
  111. The play_snd utility demonstrates the use of the /dev/sbdsp node.
  112.  
  113. The /dev/sbfm node accesses the  FM chips.  The only access to  the FM
  114. chips are through  ioctl(2)'s.  The play_cmf utility demonstrates  the
  115. use  of the FM chips  by (mostly) interpreting  and playing CMF files.
  116. The various options  controlling the voices  can be dumped  from a CMF
  117. file by the get_instruments utility.  Those familiar with synthesizers
  118. can then learn how to create their own instruments.
  119.  
  120. The /dev/sbcms node accesses absolutely nothing.  The  C/MS chips  are
  121. really awful, and Creative Labs is trying to forget it ever used them.
  122.  
  123. The  /dev/sbmidi node  does MIDI I/O  if you have  a  MIDI  dongle box
  124. attached to the joystick port.   The  driver reads & writes a longword
  125. per MIDI byte, with the other 3 bytes giving a Unix time code.
  126.  
  127. This driver is merely the rough outlines of what it could be.  Support
  128. could be added for oodles of  features, like  efficiency improvements,
  129. and ADCPM interpretion for the /dev/sbdsp node.  If you wish to add to
  130. this driver, please be my guest (after reading the license file).
  131.  
  132. The file sb.prog.doc gives the complete info on programming the SB and
  133. SB Pro.  If you have an SB  Pro and want to  hear it do stereo, you'll
  134. have to modify this software.  Please send in your changes.
  135.  
  136. With Brian's  consent,  I have taken over as maintainer of this suite.
  137. Please!  Send  your fixes to  me,  and I'll integrate them, test them,
  138. and send the  patches to Usenet.  That way, there won't be billions of
  139. versions of this driver to contend with.
  140.  
  141. Send money to Brian Smith, if you want.  
  142.  
  143. The current list of contributors is:
  144.  
  145.     Brian Smith        (brians@rigel.cs.pdx.edu)
  146.     Lance C. Norskog    (thinman@netcom.com)
  147.     Pace Willisson        (pace@blitz.com)
  148.     Rick Richardson        (rick@digibd.com)
  149.     Rick Kamp        (rickk@sco.com)
  150.  
  151. Enjoy!
  152.  
  153. Lance C. Norskog
  154.